\section{Sprint}

\subsection{Caracter\'isticas}

\textbf{Duraci\'on} 40 d\'ias (5 Semanas + 5 d\'ias). 
16/08 - 11/10\\

\textbf{Objetivo} Definir arquitectura del sistema, tecnologías a utilizar 
y diseño, e implementar una primera versi\'on del sistema. \\

\textbf{Velocity} 50 story points.

%\vspace*{0.5cm}


% ----------------------------------------------------------------------

\subsection{Detalle del sprint backlog}

Elegimos implementar las siguientes 
\emph{User Stories} que subdividimos en tareas.

\begin{framed}
\paragraph{\emph{Story} \#32:}
    Comunicarle al usuario el resultado del an\'alisis de un comentario. \\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{0.2}
        \item Catalogar como ``no publicable'' si en el análisis del comentario se detectó algún insulto: 0.1 horas.
        \item Catalogar como ``publicable seg\'un criterio configurado'' si en el análisis del comentario no se detectó algún insulto: 0.1 horas.       
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Catalogar como ``no publicable'' comentarios en los que se detectó algún insulto en su análisis previo. Catalogar como ``publicable segun criterio configurado'' si no.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\newpage
\begin{framed}
\paragraph{\emph{Story} \#31:}    
    Poder tokenizar correctamente un texto.\\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{5.5}
        \item Separar en palabras: 1 hora.
        \item Sacar caracteres especiales: 0.5 horas.
        \item Sacar acentos: 4 horas.
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item El texto queda correctamente tokenizado.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#40:}    
    Implementar una interfaz.\\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{5}
        \item Diseñar una interfaz web simple para recepci\'on de comentarios: 2 horas.
        \item Recibir correctamente un comentario via html: 1 hora.
        \item Analizar comentario y devolverlo catalogado: 2 horas.
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Presentar las funcionalidades descriptas en el diseño de implementación.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#41:}    
    Determinar el lenguaje de programación, entorno y herramientas.\\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{1}
        \item Determinar lenguaje,entorno y herramientas a utilizar: 1 hora.
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Un lenguaje determinado con un entorno y herramientas de trabajo definidas para el desarrollo.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#42:}    
    Realizar un diseño orientado a objetos.\\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{14}
        \item Realizar un boceto del diseño: 3 horas.
        \item Realizar una primera versión del diseño: 3 horas.
        \item Refinar el diseño realizado teniendo en cuenta
                más situaciones: 4 horas.
        \item Terminar de definir el diseño: 4 horas.
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Elaborar un diseño de objetos que exprese la funcionalidad del sistema.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#43:}    
    Realizar la instalación de todas las herramientas necesarias.\\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{2}
        \item Instalar herramientas en equipos: 2 horas.
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Instalar el entorno neceseario para el uso del software en los equipos de los usuarios que lo utilizarán.
    \end{sprintstoryaceptacion}
\end{framed}




% ----------------------------------------------------------------------

\newpage
\begin{framed}
\paragraph{\emph{Story} \#9:}
    Detectar y analizar insultos literales. \\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{7.5}
        \item Recolectar insultos: 1 hora.
        \item Lemarizar insultos: 0.5 horas.
        \item Reconocer el literal: 6 horas. 
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Poder reconocer por lo menos 20 insultos literales diferentes.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#46:}
    Detectar y analizar diminutivos. \\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{4.1}
        \item Obtener una base de diminutivos de insultos literales: 1 hora.
        \item Agregar reglas de transformacion de diminutivos de insultos para llegar a literales: 0.5 horas.
        \item Detectar literales modificados por diminutivos: 2.5 horas. 
        \item Obtener un resultado del análisis de detección de diminutivos del comentario ingresado: 0.1 horas
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Poder reconocer por lo menos 3 diminutivos de insultos literales.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\newpage
\begin{framed}
\paragraph{\emph{Story} \#45:}
    Detectar y analizar aumentativos. \\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{2.1}
        \item Obtener una base de aumentativos de insultos literales: 1 hora.
        \item Agregar reglas de transformacion de aumentativos de insultos para llegar a li-terales: 0.5 horas.
        \item Detectar literales modificados por aumentativos: 0.5 horas. 
        \item Obtener un resultado del análisis de detección de aumentativos del comentario ingresado: 0.1 horas
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Poder reconocer por lo menos 3 aumentativos de insultos literales.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#44:}
    Detectar y analizar peyorativos. \\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{4.1}
        \item Obtener una base de peyorativos de insultos literales: 1 hora.
        \item Agregar reglas de transformacion de peyorativos de insultos para llegar a literales: 0.5 horas.
        \item Detectar literales modificados por peyorativos: 2.5 horas. 
        \item Obtener un resultado del análisis de detección de peyorativos del comentario ingresado: 0.1 horas
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Poder reconocer por lo menos 3 peyorativos de insultos literales.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------

\begin{framed}
\paragraph{\emph{Story} \#29:}
    Detectar y analizar combinaciones de peyorativos, disminutivos y aumentativos. \\
    
    \vspace*{0.3cm}
    
    \begin{sprintstorytareas}{1.1}
        \item Aplicar varias transformaciones a palabras para detectar combinaciones de insultos: 1 hora.
        \item Detectar literales producto de las combinaciones de insultos de existir alguno: 0.1 horas
    \end{sprintstorytareas}

    \begin{sprintstoryaceptacion}
        \item Poder reconocer por lo menos 3 combinaciones de peyorativos, disminutivos y aumentativos de insultos literales.
    \end{sprintstoryaceptacion}
\end{framed}

% ----------------------------------------------------------------------


\subsection{Aclaraciones}

Como la divisi\'on en user stories no proveen un mecanismo de manejar 
las dependencias (supone que las stories son ortogonales), fue algo 
que tuvimos que tener en consideraci\'on nosotros impl\'icitamente.

Sab\'iamos que para poder detectar las combinaciones, primero \'ibamos 
a tener que poder detectar todas las dem\'as modificaciones de 
insultos por separado.

Tambi\'en, que para mostrarle al usuario un resultado, primero 
ten\'iamos que tener todo lo dem\'as ya realizado.





